using System;
using System.Collections.Generic;
using MathematicallySafe.HeadCounter.Data.Models;

namespace MathematicallySafe.HeadCounter.Data.Interfaces
{
    public interface IRaidHistory : IPersistable
    {
        DateTime WeekOneDate { get; set; }
        int LatestRaidWeek { get; }
        bool HasRaids { get; }
        IEnumerable<Raid> Raids { get; }
        void AddRaid(Raid raid);
        void RemoveRaid(Raid raid);
        event EventHandler<RaidsHistoryChangedEventArgs> RaidAdded;
        event EventHandler<RaidsHistoryChangedEventArgs> RaidRemoved;
    }
}